/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.senac.maisconhecimento.dao;

import br.senac.maisconhecimento.entidade.Autor;
import java.util.List;
import javax.persistence.Query;
import org.hibernate.Session;

/**
 *
 * @author Marcus Lemos
 */
public class AutorDao extends GenericDao<Autor> {
    private Session session = HibernateUtil.getSessionFactory().openSession();

    @SuppressWarnings("unchecked")
    public List<Autor> listar() {
        List<Autor> lista = null;
        try {
            String sql = "Select a from Autor as a";

            session.beginTransaction();
            Query query = (javax.persistence.Query) session.createQuery(sql);
            lista = (List<Autor>) query.getResultList();
            session.getTransaction().commit();

        } catch (Exception e) {
            session.getTransaction().rollback();
        }

        return lista;
    }

    public Autor consultar(Integer codigo) {
        Autor entidade = new Autor();
        try {
            session.beginTransaction();
            entidade = (Autor) session.load(Autor.class, codigo);
            session.getTransaction().commit();
        } catch (Exception e) {
            session.getTransaction().rollback();
        }

        return entidade;
    }
}
